"""
轮播图模型
"""
from sqlalchemy import Column, Integer, String, Boolean, DateTime, Text
from sqlalchemy.sql import func
from ..database import Base

class Banner(Base):
    """
    轮播图表模型
    首页轮播图管理
    """
    __tablename__ = "banners"
    
    id = Column(Integer, primary_key=True, index=True)
    
    # 轮播图标题
    title = Column(String(200), nullable=False)
    
    # 副标题（可选）
    subtitle = Column(String(500))
    
    # 图片URL
    image_url = Column(String(500), nullable=False)
    
    # 链接URL（可选）
    link_url = Column(String(500))
    
    # 描述文本
    description = Column(Text)
    
    # 是否激活显示
    is_active = Column(Boolean, default=True)
    
    # 排序顺序，数字越小越靠前
    sort_order = Column(Integer, default=0)
    
    # 创建和更新时间
    created_at = Column(DateTime(timezone=True), server_default=func.now())
    updated_at = Column(DateTime(timezone=True), onupdate=func.now())